home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 3: Developer Tools / Linux Cubed Series 3 - Developer Tools.iso / devel / lang / lisp / gcl-1.000 / gcl-1 / gcl-1.0 / cmpnew / cmpspecial.c < prev    next >
Encoding:
C/C++ Source or Header  |  1994-05-10  |  11.4 KB  |  408 lines

  1.  
  2. #include <cmpinclude.h>
  3. #include "cmpspecial.h"
  4. init_cmpspecial(){do_init(VV);}
  5. /*    local entry for function C1QUOTE    */
  6.  
  7. static object LI1(V2)
  8.  
  9. register object V2;
  10. {     VMB1 VMS1 VMV1
  11. TTL:;
  12.     if(!(endp((V2)))){
  13.     goto T1;}
  14.     (void)((*(LnkLI45))(VV[0],small_fixnum(1),small_fixnum(0)));
  15. T1:;
  16.     if(endp(cdr((V2)))){
  17.     goto T4;}
  18.     V3 = make_fixnum(length((V2)));
  19.     (void)((*(LnkLI46))(VV[0],small_fixnum(1),V3));
  20. T4:;
  21.     {object V4 = (*(LnkLI47))(car((V2)),Ct);
  22.     VMR1(V4)}
  23. }
  24. /*    local entry for function C1EVAL-WHEN    */
  25.  
  26. static object LI2(V6)
  27.  
  28. register object V6;
  29. {     VMB2 VMS2 VMV2
  30. TTL:;
  31.     if(!(endp((V6)))){
  32.     goto T7;}
  33.     (void)((*(LnkLI45))(VV[1],small_fixnum(1),small_fixnum(0)));
  34. T7:;
  35.     {register object V7;
  36.     register object V8;
  37.     V7= car((V6));
  38.     V8= car((V7));
  39. T13:;
  40.     if(!(endp((V7)))){
  41.     goto T14;}
  42.     {object V9 = (*(LnkLI48))();
  43.     VMR2(V9)}
  44. T14:;
  45.     {object V10= (V8);
  46.     if((V10!= VV[49]))goto T19;
  47.     {object V11 = (*(LnkLI50))(cdr((V6)));
  48.     VMR2(V11)}
  49. T19:;
  50.     if((V10!= VV[51])
  51.     && (V10!= VV[52]))goto T20;
  52.     goto T18;
  53. T20:;
  54.     (void)((VFUN_NARGS=2,(*(LnkLI53))(VV[2],(V8))));}
  55. T18:;
  56.     V7= cdr((V7));
  57.     V8= car((V7));
  58.     goto T13;}
  59. }
  60. /*    local entry for function C1DECLARE    */
  61.  
  62. static object LI3(V13)
  63.  
  64. object V13;
  65. {     VMB3 VMS3 VMV3
  66. TTL:;
  67.     V14= make_cons(VV[4],(V13));
  68.     {object V15 = (VFUN_NARGS=2,(*(LnkLI53))(VV[3],/* INLINE-ARGS */V14));
  69.     VMR3(V15)}
  70. }
  71. /*    local entry for function C1THE    */
  72.  
  73. static object LI4(V17)
  74.  
  75. register object V17;
  76. {     VMB4 VMS4 VMV4
  77. TTL:;
  78.     {register object V18;
  79.     register object V19;
  80.     object V20;
  81.     V18= Cnil;
  82.     V19= Cnil;
  83.     V20= Cnil;
  84.     if(endp((V17))){
  85.     goto T30;}
  86.     if(!(endp(cdr((V17))))){
  87.     goto T29;}
  88. T30:;
  89.     V21 = make_fixnum(length((V17)));
  90.     (void)((*(LnkLI45))(VV[5],small_fixnum(2),V21));
  91. T29:;
  92.     if(endp(cddr((V17)))){
  93.     goto T34;}
  94.     V22 = make_fixnum(length((V17)));
  95.     (void)((*(LnkLI46))(VV[5],small_fixnum(2),V22));
  96. T34:;
  97.     V19= (*(LnkLI54))(cadr((V17)));
  98.     base[0]= cadr((V19));
  99.     vs_top=(vs_base=base+0)+1;
  100.     (void) (*Lnk55)();
  101.     vs_top=sup;
  102.     V18= vs_base[0];
  103.     V23= (*(LnkLI57))(car((V17)));
  104.     V24= structure_ref((V18),VV[6],2);
  105.     V20= (*(LnkLI56))(/* INLINE-ARGS */V23,/* INLINE-ARGS */V24);
  106.     if(((V20))!=Cnil){
  107.     goto T44;}
  108.     V25= make_cons(VV[5],(V17));
  109.     (void)((VFUN_NARGS=2,(*(LnkLI58))(VV[7],/* INLINE-ARGS */V25)));
  110. T44:;
  111.     (void)(structure_set((V18),VV[6],2,(V20)));
  112.     {object V26 = listA(3,car((V19)),(V18),cddr((V19)));
  113.     VMR4(V26)}}
  114. }
  115. /*    local entry for function C1COMPILER-LET    */
  116.  
  117. static object LI5(V28)
  118.  
  119. register object V28;
  120. {     VMB5 VMS5 VMV5
  121. TTL:;
  122.     {register object V29;
  123.     register object V30;
  124.     V29= Cnil;
  125.     V30= Cnil;
  126.     if(!(endp((V28)))){
  127.     goto T50;}
  128.     (void)((*(LnkLI45))(VV[8],small_fixnum(1),small_fixnum(0)));
  129. T50:;
  130.     {register object V31;
  131.     register object V32;
  132.     V31= car((V28));
  133.     V32= car((V31));
  134. T57:;
  135.     if(!(endp((V31)))){
  136.     goto T58;}
  137.     goto T53;
  138. T58:;
  139.     if(!(type_of((V32))==t_cons)){
  140.     goto T64;}
  141.     if(!(type_of(car((V32)))==t_symbol)){
  142.     goto T67;}
  143.     if(endp(cdr((V32)))){
  144.     goto T66;}
  145.     if(endp(cddr((V32)))){
  146.     goto T66;}
  147. T67:;
  148.     (void)((VFUN_NARGS=2,(*(LnkLI53))(VV[9],(V32))));
  149. T66:;
  150.     V29= make_cons(car((V32)),(V29));
  151.     if(!(endp(cdr((V32))))){
  152.     goto T78;}
  153.     V33= Cnil;
  154.     goto T76;
  155. T78:;
  156.     base[2]= cadr((V32));
  157.     vs_top=(vs_base=base+2)+1;
  158.     Leval();
  159.     vs_top=sup;
  160.     V33= vs_base[0];
  161. T76:;
  162.     V30= make_cons(V33,(V30));
  163.     goto T62;
  164. T64:;
  165.     if(!(type_of((V32))==t_symbol)){
  166.     goto T82;}
  167.     V29= make_cons((V32),(V29));
  168.     V30= make_cons(Cnil,(V30));
  169.     goto T62;
  170. T82:;
  171.     (void)((VFUN_NARGS=2,(*(LnkLI53))(VV[10],(V32))));
  172. T62:;
  173.     V31= cdr((V31));
  174.     V32= car((V31));
  175.     goto T57;}
  176. T53:;
  177.     V29= reverse((V29));
  178.     V30= reverse((V30));
  179.     {object symbols,values;
  180.     bds_ptr V34=bds_top;
  181.     base[0]= (V29);
  182.     symbols= base[0];
  183.     base[1]= (V30);
  184.     values= base[1];
  185.     while(!endp(symbols)){
  186.     if(type_of(MMcar(symbols))!=t_symbol)
  187.     FEinvalid_variable("~s is not a symbol.",MMcar(symbols));
  188.     if(endp(values))bds_bind(MMcar(symbols),OBJNULL);
  189.     else{bds_bind(MMcar(symbols),MMcar(values));
  190.     values=MMcdr(values);}
  191.     symbols=MMcdr(symbols);}
  192.     V35= (*(LnkLI50))(cdr((V28)));
  193.     bds_unwind(V34);
  194.     V28= V35;}
  195.     {object V36 = list(5,VV[8],cadr((V28)),(V29),(V30),(V28));
  196.     VMR5(V36)}}
  197. }
  198. /*    function definition for C2COMPILER-LET    */
  199.  
  200. static L6()
  201. {register object *base=vs_base;
  202.     register object *sup=base+VM6; VC6
  203.     vs_reserve(VM6);
  204.     {object V37;
  205.     object V38;
  206.     object V39;
  207.     check_arg(3);
  208.     V37=(base[0]);
  209.     V38=(base[1]);
  210.     V39=(base[2]);
  211.     vs_top=sup;
  212. TTL:;
  213.     {object symbols,values;
  214.     bds_ptr V40=bds_top;
  215.     base[3]= (V37);
  216.     symbols= base[3];
  217.     base[4]= (V38);
  218.     values= base[4];
  219.     while(!endp(symbols)){
  220.     if(type_of(MMcar(symbols))!=t_symbol)
  221.     FEinvalid_variable("~s is not a symbol.",MMcar(symbols));
  222.     if(endp(values))bds_bind(MMcar(symbols),OBJNULL);
  223.     else{bds_bind(MMcar(symbols),MMcar(values));
  224.     values=MMcdr(values);}
  225.     symbols=MMcdr(symbols);}
  226.     base[3]= (V39);
  227.     vs_top=(vs_base=base+3)+1;
  228.     (void) (*Lnk59)();
  229.     bds_unwind(V40);
  230.     return;}
  231.     }
  232. }
  233. /*    local entry for function C1FUNCTION    */
  234.  
  235. static object LI7(V42)
  236.  
  237. register object V42;
  238. {     VMB7 VMS7 VMV7
  239.     bds_check;
  240. TTL:;
  241.     {object V43;
  242.     V43= Cnil;
  243.     if(!(endp((V42)))){
  244.     goto T104;}
  245.     (void)((*(LnkLI45))(VV[11],small_fixnum(1),small_fixnum(0)));
  246. T104:;
  247.     if(endp(cdr((V42)))){
  248.     goto T107;}
  249.     V44 = make_fixnum(length((V42)));
  250.     (void)((*(LnkLI46))(VV[11],small_fixnum(1),V44));
  251. T107:;
  252.     {register object V45;
  253.     V45= car((V42));
  254.     if(!(type_of((V45))==t_symbol)){
  255.     goto T112;}
  256.     V43= (*(LnkLI60))((V45));
  257.     if(((V43))==Cnil){
  258.     goto T115;}
  259.     if(!((car((V43)))==(VV[12]))){
  260.     goto T115;}
  261.     {object V46 = list(3,VV[11],symbol_value(VV[13]),(V43));
  262.     VMR7(V46)}
  263. T115:;
  264.     {object V47;
  265.     V48= get((V45),VV[15],Cnil);
  266.     V47= (VFUN_NARGS=2,(*(LnkLI61))(VV[14],((V48)==Cnil?Ct:Cnil)));
  267.     {object V49 = list(3,VV[11],(V47),list(3,VV[16],(V47),(V45)));
  268.     VMR7(V49)}}
  269. T112:;
  270.     if(!(type_of((V45))==t_cons)){
  271.     goto T123;}
  272.     if(!((car((V45)))==(VV[17]))){
  273.     goto T123;}
  274.     if(!(endp(cdr((V45))))){
  275.     goto T127;}
  276.     (void)((VFUN_NARGS=2,(*(LnkLI53))(VV[18],(V45))));
  277. T127:;
  278.     base[0]= make_cons(VV[20],symbol_value(VV[19]));
  279.     base[1]= make_cons(VV[20],symbol_value(VV[21]));
  280.     base[2]= make_cons(VV[20],symbol_value(VV[22]));
  281.     base[3]= make_cons(VV[20],symbol_value(VV[23]));
  282.     bds_bind(VV[19],base[0]);
  283.     bds_bind(VV[21],base[1]);
  284.     bds_bind(VV[22],base[2]);
  285.     bds_bind(VV[23],base[3]);
  286.     V45= (VFUN_NARGS=1,(*(LnkLI62))(cdr((V45))));
  287.     {object V50 = list(3,VV[11],cadr((V45)),(V45));
  288.     bds_unwind1;
  289.     bds_unwind1;
  290.     bds_unwind1;
  291.     bds_unwind1;
  292.     VMR7(V50)}
  293. T123:;
  294.     {object V51 = (VFUN_NARGS=2,(*(LnkLI53))(VV[24],(V45)));
  295.     VMR7(V51)}}}
  296. }
  297. /*    local entry for function C2FUNCTION    */
  298.  
  299. static object LI8(V53)
  300.  
  301. register object V53;
  302. {     VMB8 VMS8 VMV8
  303. TTL:;
  304.     {object V54= car((V53));
  305.     if((V54!= VV[16]))goto T136;
  306.     V55= list(2,VV[25],(*(LnkLI64))(caddr((V53))));
  307.     {object V56 = (VFUN_NARGS=1,(*(LnkLI63))(/* INLINE-ARGS */V55));
  308.     VMR8(V56)}
  309. T136:;
  310.     if((V54!= VV[12]))goto T137;
  311.     if((cadddr((V53)))==Cnil){
  312.     goto T139;}
  313.     V57= list(2,VV[26],structure_ref(caddr((V53)),VV[27],2));
  314.     {object V58 = (VFUN_NARGS=1,(*(LnkLI63))(/* INLINE-ARGS */V57));
  315.     VMR8(V58)}
  316. T139:;
  317.     V59= list(2,VV[28],structure_ref(caddr((V53)),VV[27],1));
  318.     {object V60 = (VFUN_NARGS=1,(*(LnkLI63))(/* INLINE-ARGS */V59));
  319.     VMR8(V60)}
  320. T137:;
  321.     {register object V61;
  322.     setq(VV[32],number_plus(symbol_value(VV[32]),small_fixnum(1)));
  323.     V61= (VFUN_NARGS=4,(*(LnkLI65))(VV[29],VV[30],VV[31],symbol_value(VV[32])));
  324.     if((symbol_value(VV[34]))!=Cnil){
  325.     goto T147;}
  326.     V62= Cnil;
  327.     goto T145;
  328. T147:;
  329.     V62= make_cons(small_fixnum(0),small_fixnum(0));
  330. T145:;
  331.     V63= list(5,VV[30],V62,symbol_value(VV[35]),(V61),(V53));
  332.     setq(VV[33],make_cons(/* INLINE-ARGS */V63,symbol_value(VV[33])));
  333.     setq(VV[36],make_cons((V61),symbol_value(VV[36])));
  334.     if((symbol_value(VV[34]))==Cnil){
  335.     goto T152;}
  336.     V64= list(3,VV[37],structure_ref((V61),VV[27],3),symbol_value(VV[34]));
  337.     {object V65 = (VFUN_NARGS=1,(*(LnkLI63))(/* INLINE-ARGS */V64));
  338.     VMR8(V65)}
  339. T152:;
  340.     (void)((*(LnkLI66))(Cnil));{object V66;
  341.     V66= symbol_value(VV[39]);
  342.     V67= structure_ref((V61),VV[27],3);
  343.     V68= list(3,VV[38],V66,list(3,VV[40],Cnil,(*(LnkLI68))(VV[41],/* INLINE-ARGS */V67)));
  344.     (void)((VFUN_NARGS=2,(*(LnkLI67))(/* INLINE-ARGS */V68,Ct)));}
  345.     V69= list(2,VV[42],symbol_value(VV[39]));
  346.     {object V70 = (VFUN_NARGS=1,(*(LnkLI63))(/* INLINE-ARGS */V69));
  347.     VMR8(V70)}}}
  348. }
  349. /*    local entry for function WT-SYMBOL-FUNCTION    */
  350.  
  351. static object LI9(V72)
  352.  
  353. object V72;
  354. {     VMB9 VMS9 VMV9
  355. TTL:;
  356.     if((symbol_value(VV[43]))==Cnil){
  357.     goto T157;}
  358.     princ_str("symbol_function(VV[",VV[44]);
  359.     (void)((*(LnkLI69))((V72)));
  360.     princ_str("])",VV[44]);
  361.     {object V73 = Cnil;
  362.     VMR9(V73)}
  363. T157:;
  364.     princ_str("(VV[",VV[44]);
  365.     (void)((*(LnkLI69))((V72)));
  366.     princ_str("]->s.s_gfdef)",VV[44]);
  367.     {object V74 = Cnil;
  368.     VMR9(V74)}
  369. }
  370. /*    local entry for function WT-MAKE-CCLOSURE    */
  371.  
  372. static object LI10(V77,V78)
  373.  
  374. object V77;object V78;
  375. {     VMB10 VMS10 VMV10
  376. TTL:;
  377.     princ_str("\n    make_cclosure_new(LC",VV[44]);
  378.     (void)((*(LnkLI69))((V77)));
  379.     princ_str(",Cnil,",VV[44]);
  380.     (void)((VFUN_NARGS=1,(*(LnkLI70))((V78))));
  381.     princ_str(",Cdata)",VV[44]);
  382.     {object V79 = Cnil;
  383.     VMR10(V79)}
  384. }
  385. static object  LnkTLI70(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_vproc(VV[70],&LnkLI70,ap);} /* WT-CLINK */
  386. static object  LnkTLI69(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_proc(VV[69],&LnkLI69,1,ap);} /* WT1 */
  387. static object  LnkTLI68(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_proc(VV[68],&LnkLI68,2,ap);} /* ADD-ADDRESS */
  388. static object  LnkTLI67(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_vproc(VV[67],&LnkLI67,ap);} /* ADD-INIT */
  389. static object  LnkTLI66(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_proc(VV[66],&LnkLI66,1,ap);} /* PUSH-DATA-INCF */
  390. static object  LnkTLI65(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_vproc(VV[65],&LnkLI65,ap);} /* MAKE-FUN */
  391. static object  LnkTLI64(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_proc(VV[64],&LnkLI64,1,ap);} /* ADD-SYMBOL */
  392. static object  LnkTLI63(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_vproc(VV[63],&LnkLI63,ap);} /* UNWIND-EXIT */
  393. static object  LnkTLI62(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_vproc(VV[62],&LnkLI62,ap);} /* C1LAMBDA-EXPR */
  394. static object  LnkTLI61(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_vproc(VV[61],&LnkLI61,ap);} /* MAKE-INFO */
  395. static object  LnkTLI60(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_proc(VV[60],&LnkLI60,1,ap);} /* C1LOCAL-CLOSURE */
  396. static LnkT59(){ call_or_link(VV[59],&Lnk59);} /* C2EXPR */
  397. static object  LnkTLI58(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_vproc(VV[58],&LnkLI58,ap);} /* CMPWARN */
  398. static object  LnkTLI57(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_proc(VV[57],&LnkLI57,1,ap);} /* TYPE-FILTER */
  399. static object  LnkTLI56(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_proc(VV[56],&LnkLI56,2,ap);} /* TYPE-AND */
  400. static LnkT55(){ call_or_link(VV[55],&Lnk55);} /* COPY-INFO */
  401. static object  LnkTLI54(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_proc(VV[54],&LnkLI54,1,ap);} /* C1EXPR */
  402. static object  LnkTLI53(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_vproc(VV[53],&LnkLI53,ap);} /* CMPERR */
  403. static object  LnkTLI50(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_proc(VV[50],&LnkLI50,1,ap);} /* C1PROGN */
  404. static object  LnkTLI48(){return call_proc0(VV[48],&LnkLI48);} /* C1NIL */
  405. static object  LnkTLI47(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_proc(VV[47],&LnkLI47,2,ap);} /* C1CONSTANT-VALUE */
  406. static object  LnkTLI46(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_proc(VV[46],&LnkLI46,3,ap);} /* TOO-MANY-ARGS */
  407. static object  LnkTLI45(va_alist)va_dcl{va_list ap;va_start(ap);return(object )call_proc(VV[45],&LnkLI45,3,ap);} /* TOO-FEW-ARGS */
  408.